//
//  Project.swift
//  IteratorPattern
//
//  Created by mac on 2017/11/14.
//  Copyright © 2017年 RRC. All rights reserved.
//

import Foundation

class Project:IProject {
    
    //定义一个项目列表，说有的项目都放在这里
    private var projectList = Array<IProject>()
    
    //项目名称
    private var name = String()
    //项目成员数量
    private var num = 0
    //项目费用
    private var cost = 0
    
    init() {
        
    }
    
    //构造函数，把所有老板需要看到的信息存储起来
    private init(name:String, num:Int, cost:Int) {
        //赋值到类的成员变量中
        self.name = name
        self.num = num
        self.cost = cost
    }
    
    //得到项目的信息
    func getProjectInfo() -> String {
        var info:String = ""
        //获得项目的名称
        info = info + "项目名称是："+self.name
        //获得项目人数
        info = info + "\t项目人数是：\(self.num)"
        //项目费用
        info = info + "\t项目费用：\(self.cost)"
        
        return info
    }
    
    func add(name: String, num: Int, cost: Int) {
        self.projectList.append(Project(name: name, num:num , cost: cost))
    }
    
    func iterator() -> ProjectIterator {
        return ProjectIterator(projectList: self.projectList)
    }
    
}
